/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Matricula_Nota;

import java.awt.BorderLayout;

/**
 * @author Pedro
 */
public class MenuPrincipal extends javax.swing.JFrame {

    private Coordinador coordinador;

    public MenuPrincipal() {
        initComponents();
        coordinador = new Coordinador();
        cargaInicial();
        JPanel_Fondo pnl_fondo = new JPanel_Fondo();
        this.add(pnl_fondo, BorderLayout.CENTER);
        this.pack();
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jMenuBar1 = new javax.swing.JMenuBar();
        jMenu1 = new javax.swing.JMenu();
        jSeparator1 = new javax.swing.JPopupMenu.Separator();
        mnuItmAlumno = new javax.swing.JMenuItem();
        mnuItmProfesor = new javax.swing.JMenuItem();
        mnuItmArea = new javax.swing.JMenuItem();
        mnuItmSeccion = new javax.swing.JMenuItem();
        jMenu2 = new javax.swing.JMenu();
        mnuItmNota = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("POO - Módulo de Matrícula y Registro de Notas");

        jMenu1.setText("Mantenimiento");
        jMenu1.setPreferredSize(new java.awt.Dimension(102, 21));

        jSeparator1.setPreferredSize(new java.awt.Dimension(0, 0));
        jMenu1.add(jSeparator1);

        mnuItmAlumno.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Matricula_Nota/Recursos/AddAlumno.png"))); // NOI18N
        mnuItmAlumno.setText("Alumno");
        mnuItmAlumno.setFocusPainted(true);
        mnuItmAlumno.setPreferredSize(new java.awt.Dimension(100, 23));
        mnuItmAlumno.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mnuItmAlumnoActionPerformed(evt);
            }
        });
        jMenu1.add(mnuItmAlumno);

        mnuItmProfesor.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Matricula_Nota/Recursos/AddProfesor.png"))); // NOI18N
        mnuItmProfesor.setText("Profesor");
        mnuItmProfesor.setPreferredSize(new java.awt.Dimension(100, 23));
        mnuItmProfesor.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mnuItmProfesorActionPerformed(evt);
            }
        });
        jMenu1.add(mnuItmProfesor);

        mnuItmArea.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Matricula_Nota/Recursos/AddArea.png"))); // NOI18N
        mnuItmArea.setText("Área");
        mnuItmArea.setPreferredSize(new java.awt.Dimension(100, 23));
        mnuItmArea.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mnuItmAreaActionPerformed(evt);
            }
        });
        jMenu1.add(mnuItmArea);

        mnuItmSeccion.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Matricula_Nota/Recursos/AddSeccion.png"))); // NOI18N
        mnuItmSeccion.setText("Sección");
        mnuItmSeccion.setPreferredSize(new java.awt.Dimension(100, 23));
        mnuItmSeccion.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mnuItmSeccionActionPerformed(evt);
            }
        });
        jMenu1.add(mnuItmSeccion);

        jMenuBar1.add(jMenu1);

        jMenu2.setText("Notas");
        jMenu2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenu2ActionPerformed(evt);
            }
        });

        mnuItmNota.setText("Nota");
        mnuItmNota.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mnuItmNotaActionPerformed(evt);
            }
        });
        jMenu2.add(mnuItmNota);

        jMenuBar1.add(jMenu2);

        setJMenuBar(jMenuBar1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 619, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 356, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void mnuItmProfesorActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuItmProfesorActionPerformed
        // TODO add your handling code here:
        VistaProfesor vista = new VistaProfesor(coordinador);
        vista.setLocationRelativeTo(this);
        vista.setVisible(true);
}//GEN-LAST:event_mnuItmProfesorActionPerformed

    private void mnuItmAreaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuItmAreaActionPerformed
        VistaAreas vista = new VistaAreas(coordinador);
        vista.setLocationRelativeTo(this);
        vista.setVisible(true);
}//GEN-LAST:event_mnuItmAreaActionPerformed

    private void mnuItmSeccionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuItmSeccionActionPerformed
        // TODO add your handling code here:
        VistaSeccion vista = new VistaSeccion(this, true, coordinador);
        vista.setLocationRelativeTo(this);
        vista.setVisible(true);
}//GEN-LAST:event_mnuItmSeccionActionPerformed

    private void mnuItmAlumnoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuItmAlumnoActionPerformed
        VistaAlumno vista = new VistaAlumno(coordinador);
        vista.setLocationRelativeTo(this);
        vista.setVisible(true);
    }//GEN-LAST:event_mnuItmAlumnoActionPerformed

    private void jMenu2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenu2ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_jMenu2ActionPerformed

    private void mnuItmNotaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuItmNotaActionPerformed
        VistaNotas vista = new VistaNotas(this, true, coordinador);
        vista.setLocationRelativeTo(this);
        vista.setVisible(true);
    }//GEN-LAST:event_mnuItmNotaActionPerformed

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new MenuPrincipal().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenu jMenu2;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JPopupMenu.Separator jSeparator1;
    private javax.swing.JMenuItem mnuItmAlumno;
    private javax.swing.JMenuItem mnuItmArea;
    private javax.swing.JMenuItem mnuItmNota;
    private javax.swing.JMenuItem mnuItmProfesor;
    private javax.swing.JMenuItem mnuItmSeccion;
    // End of variables declaration//GEN-END:variables

    private void cargaInicial() {
        coordinador.registrarProfesor("10992071", "Elvis Juan", "Ballena Rosales", "12/10/1988", "Av. Los Heroes, Surquillo", "2872896", "Soltero", "Peruano", "micorreo@hotmail.com", "Docente", 1);
        coordinador.registrarProfesor("10992072", "Luz Maria", "Ballena Rosales", "12/10/1988", "Av. Los Heroes, Surquillo", "2872896", "Soltero", "Peruano", "micorreo@hotmail.com", "Docente", 1);
        coordinador.registrarProfesor("34232072", "Eduardo", "Jiemenz Asdee", "12/10/1988", "Av. Los Heroes, Surquillo", "2872896", "Soltero", "Peruano", "micorreo@hotmail.com", "Docente", 1);
        coordinador.registrarAlumno("11123645", "Ana Luz Marlon", "21/01/2011", "FEMENINO", "ROSA", "CASA", "SSSS", "AAAAA", "133654");
        coordinador.registrarAlumno("33123645", "Carlos del Castillo", "21/01/2011", "MASCULINO", "ROSA", "CASA", "SSSS", "AAAAA", "133654");
        coordinador.registrarArea("HUMANIDADES");
        coordinador.registrarArea("CIENCIAS");
        coordinador.registrarCurso("HISTORIA DEL PERU", coordinador.getAreas().get(0));
        coordinador.registrarCurso("HISTORIA UNIVERSAL", coordinador.getAreas().get(0));
        coordinador.registrarCurso("MATEMETICA", coordinador.getAreas().get(1));
        coordinador.registrarCurso("ALGEBRA", coordinador.getAreas().get(1));
        coordinador.registrarCurso("ARITMETICA", coordinador.getAreas().get(1));
        Curso curso1 = coordinador.getAreas().get(0).getCursos().get(0);
        Curso curso2 = coordinador.getAreas().get(0).getCursos().get(1);
        Curso curso3 = coordinador.getAreas().get(1).getCursos().get(0);
        Curso curso4 = coordinador.getAreas().get(1).getCursos().get(1);
        coordinador.registrarProfesorCurso(coordinador.getAreas().get(0), curso1, coordinador.getProfesores().get(0));
        coordinador.registrarProfesorCurso(coordinador.getAreas().get(0), curso2, coordinador.getProfesores().get(1));
        coordinador.registrarProfesorCurso(coordinador.getAreas().get(1), curso3, coordinador.getProfesores().get(2));
        coordinador.registrarProfesorCurso(coordinador.getAreas().get(1), curso4, coordinador.getProfesores().get(0));
        coordinador.registrarSeccion("S1A", "Secundaria", 1, 2009, 20);
        coordinador.registrarMatricula(coordinador.getAlumnos().get(0), "21/01/2011", coordinador.getSecciones().get(0));
        coordinador.registrarMatricula(coordinador.getAlumnos().get(1), "21/01/2011", coordinador.getSecciones().get(0));
        coordinador.registrarHorario(1, 1, coordinador.getSecciones().get(0), curso1, curso1.getProfesores().get(0));
        coordinador.registrarHorario(1, 2, coordinador.getSecciones().get(0), curso2, curso2.getProfesores().get(0));
        coordinador.registrarHorario(1, 3, coordinador.getSecciones().get(0), curso3, curso3.getProfesores().get(0));
    }
}
